USE [BMIG_MENSUAL_POST_CADENA]

 -- creating the store procedure
IF EXISTS (SELECT name 
	   FROM   sysobjects 
	   WHERE  name = 'WASP_M0007_CABECERA_CODIGO_SEGURO'
	   AND 	  type = 'P') 
	DROP PROCEDURE  [dbo].[WASP_M0007_CABECERA_CODIGO_SEGURO]
GO

create PROCEDURE [dbo].[WASP_M0007_CABECERA_CODIGO_SEGURO]
(@FECHA_INICIO CHAR(8), @FECHA_TERMINO AS CHAR(8)) AS
begin
    SELECT 
      a.ppcta
    , a.ppoper
    , a.ppsuc
    , a.ppimp11
    , a.ppimp12
    , a.ppimp13
    , a.ppimp14
    , a.ppimp15
    , a.ppimp16
    , a.ppimp17
    , a.ppimp18
    , a.ppimp19
    into dbo.cabecera_codigos_segurosIP_aux_ant
    FROM dbo.fsd611 AS a WITH (nolock) 
    CROSS JOIN dbo.fsd601 AS b WITH (nolock) 
    CROSS JOIN dbo.JT73109 AS d WITH (nolock)
    WHERE (a.ppsuc = b.ppsuc) 
    AND (a.ppcta = b.ppcta) 
    AND (a.ppoper = b.ppoper) 
    AND (a.ppexte = 9) 
    AND (a.ppsbop = 0) 
    AND (a.pgcod = b.pgcod) 
    AND (a.ppmod = b.ppmod) 
    AND (a.ppmda = b.ppmda) 
    AND (a.ppsbop = b.ppsbop) 
    AND (a.pptope = b.pptope) 
    AND (b.d601co = 'S') 
    AND (d.JT73109FPA = a.ppoper) 
    AND (d.JT73109SUC = a.ppsuc) 
    AND (d.JT73109FAP BETWEEN @FECHA_INICIO AND @FECHA_TERMINO)
    GROUP BY 
      a.ppsuc
    , a.ppcta
    , a.ppoper
    , a.ppimp11
    , a.ppimp12
    , a.ppimp13
    , a.ppimp14
    , a.ppimp15
    , a.ppimp16
    , a.ppimp17
    , a.ppimp18
    , a.ppimp19
    
    SELECT a.ppcta
    , a.ppoper
    , a.ppsuc
    , a.ppimp11
    , a.ppimp12
    , a.ppimp13
    , a.ppimp14
    , a.ppimp15
    , a.ppimp16
    , a.ppimp17
    , a.ppimp18
    , a.ppimp19
    into dbo.cabecera_codigos_segurosIP_ant
    FROM dbo.cabecera_codigos_segurosIP_aux_ant AS a 
    CROSS JOIN dbo.fsd010 AS c WITH (nolock)
    WHERE (a.ppsuc = c.aosuc) 
    AND (a.ppcta = c.aocta) 
    AND (a.ppoper = c.aooper) 
    AND (c.aosbop = 0) 
    AND (c.aocta <> 999999999) AND (c.aooper <> 999999999)

end